package com.ruoyi.system.mapper;

import java.util.List;
import com.ruoyi.system.domain.survey.SurveyQuestionnaire;

/**
 * 问卷Mapper接口
 * 
 */
public interface SurveyQuestionnaireMapper 
{
    /**
     * 查询问卷
     * 
     * @param surveyId 问卷ID
     * @return 问卷
     */
    public SurveyQuestionnaire selectSurveyQuestionnaireById(Long surveyId);

    /**
     * 查询问卷列表
     * 
     * @param surveyQuestionnaire 问卷
     * @return 问卷集合
     */
    public List<SurveyQuestionnaire> selectSurveyQuestionnaireList(SurveyQuestionnaire surveyQuestionnaire);
    
    /**
     * 查询待审批问卷列表
     * 
     * @param surveyQuestionnaire 问卷
     * @return 问卷集合
     */
    public List<SurveyQuestionnaire> selectSurveyApprovalList(SurveyQuestionnaire surveyQuestionnaire);

    /**
     * 新增问卷
     * 
     * @param surveyQuestionnaire 问卷
     * @return 结果
     */
    public int insertSurveyQuestionnaire(SurveyQuestionnaire surveyQuestionnaire);

    /**
     * 修改问卷
     * 
     * @param surveyQuestionnaire 问卷
     * @return 结果
     */
    public int updateSurveyQuestionnaire(SurveyQuestionnaire surveyQuestionnaire);

    /**
     * 删除问卷
     * 
     * @param surveyId 问卷ID
     * @return 结果
     */
    public int deleteSurveyQuestionnaireById(Long surveyId);

    /**
     * 批量删除问卷
     * 
     * @param surveyIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteSurveyQuestionnaireByIds(Long[] surveyIds);
    
    /**
     * 更新问卷状态
     * 
     * @param surveyId 问卷ID
     * @param status 状态
     * @return 结果
     */
    public int updateSurveyStatus(Long surveyId, String status);
    
    /**
     * 更新问卷访问数量
     * 
     * @param surveyId 问卷ID
     * @return 结果
     */
    public int updateSurveyVisitCount(Long surveyId);
    
    /**
     * 更新问卷回答数量
     * 
     * @param surveyId 问卷ID
     * @return 结果
     */
    public int updateSurveyAnswerCount(Long surveyId);
} 